The invention relates generally to the field of chip design software applications, more particularly to a system and method for utilizing customized register names for registers in memory banks.
It is often useful to utilize circuit design application software to layout and plan new integrated circuits. This circuit design application software is typically configured to aid the user in keeping track of resource requirements of particular modules. Furthermore, circuit design application software also allows users to assign chip resources to implement particular modules or xe2x80x9cdesigns.xe2x80x9d
However, circuit design software applications are typically not easily customizable. In order to configure a hardware block to perform a specific function, in the past, the circuit designer needed to remember the physical addresses of the registers and then program them accordingly. The actual physical addresses are inserted into the source code sections and specific values were loaded therein. If a module was to be implemented on another hardware element, then a new set of registers needed to be used and recalled because each hardware element offers a different physical address for the same configuration register. The process of remembering physical addresses for the registers can be very error-prone and tedious.
Circuit designers are typically required to manually and textually track their layout decisions with minimal graphical support. This is especially true for programming microcontrollers.
It is useful to supply a circuit designer with a circuit design application software that provides the circuit designer with a comprehensive display utilizing customizable labels associated with particular physical address and also displaying any associated values.
A system and method are described for displaying a customized register name, an associated physical address, and an associated value. The customized register name identifies a user module and a corresponding configuration register of the user module. The customized register name can be automatically generated based on the user module name and the configuration register name. The customized register name can also be modified as a unique identifier by a user. The physical address register and value of the configuration register can be automatically updated based on modifications of the user module and/or hardware resources assigned to the user module.
More specifically, embodiments of the present invention are directed to a method of generating program code for a programmable electronic device comprising: a) associating a register textual label with a configuration register of an electronic circuit design; b) associating the electronic circuit design with a first programmable hardware resource, the first programmable hardware resource comprising first physical register addresses; c) automatically associating the configuration register with a physical address of the first physical register addresses; and d) rendering a display comprising the textual label of the configuration register and the physical address of the first physical register addresses. Embodiments also include the above and wherein the programmable electronic device is a programmable microcontroller device.
Embodiments also include a method as described above further comprising: e) associating the electronic circuit design with a second programmable hardware resource, the second programmable hardware resource comprising second physical register addresses; f) automatically associating the configuration register with a new physical address of the second physical register addresses; and g) updating the display to comprise the textual label of the configuration register and the new physical address of the second physical register addresses.
Embodiments include the above and wherein the display is a textual grid display further comprising a plurality of textual labels and associated respective physical addresses and further comprising automatically generating source code for programming the programmable electronic device to implement the electronic circuit design, the source code comprising a mapping between the textual label and the physical address.